home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-09-17 | 5.1 KB | 173 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: FWInter.h
- // Release Version: $ ODF 2 $
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #ifndef FWINTER_H
- #define FWINTER_H
-
- #ifndef FWPRTDEF_H
- #include "FWPrtDef.h"
- #endif
-
- // ----- Foundation Includes -----
-
- #ifndef FWSTDDEF_H
- #include "FWStdDef.h"
- #endif
-
- #ifndef FWRUNTYP_H
- #include "FWRunTyp.h"
- #endif
-
- #ifndef FWTCOLL_H
- #include "FWTColl.h"
- #endif
-
- // ----- OpenDoc Includes -----
-
- #ifndef _ODTYPES_
- #include <ODTypes.h>
- #endif
-
- //========================================================================================
- // Forward Declarations
- //========================================================================================
-
- class ODStorageUnit;
- class ODPasteAsResult;
- class ODDraft;
-
- class FW_CPart;
- class FW_CFrame;
- class FW_CCloneInfo;
- class FW_CPromise;
- class FW_CSelection;
- class FW_CContent;
- class FW_CPromise;
- class FW_CLinkSource;
-
- //========================================================================================
- // class FW_CDataInterchange
- //========================================================================================
-
- class FW_CDataInterchange
- {
- friend class FW_CPromiseIterator;
-
- //----------------------------------------------------------------------------------------
- // Initialization/Destruction
- //
- public:
- FW_CDataInterchange(Environment* ev, FW_CPart* part);
- virtual ~FW_CDataInterchange();
-
- //----------------------------------------------------------------------------------------
- // Public API
- //
- public:
-
- virtual void ExternalizeData(Environment* ev,
- FW_CContent* content,
- FW_CFrame* scopeFrame,
- ODStorageUnit* destinationSU,
- FW_StorageKinds storageKind,
- ODCloneKind cloneKind);
-
- virtual FW_EInternalizeResult InternalizeData(Environment* ev,
- FW_CContent* content,
- FW_CFrame* scopeFrame,
- ODStorageUnit* sourceSU,
- FW_StorageKinds storageKind,
- ODCloneKind cloneKind,
- ODPasteAsResult* embedAsInfo);
-
- void ResolveClipboardPromise(Environment* ev);
- void ResolveAllPromises(Environment* ev);
-
- ODTranslateResult TranslateData(Environment* ev,
- ODStorageUnit* storageUnit,
- ODType translateKind,
- ODType desiredKind);
-
- ODUpdateID GetLastClipboardUpdateID(Environment* ev) const;
-
- //----------------------------------------------------------------------------------------
- // For Internal Use Only
- //
- public:
- virtual void PrivPostInternalizeData(Environment* ev,
- FW_CContent* content,
- FW_CCloneInfo* cloneInfo,
- FW_EInternalizeResult result);
-
- virtual void PrivHandleExternalizeData(Environment* ev,
- FW_CContent* content,
- ODStorageUnit* destinationSU,
- FW_StorageKinds storageKind,
- FW_CCloneInfo* cloneInfo);
- virtual FW_EInternalizeResult PrivHandleInternalizeData(Environment* ev,
- FW_CContent* content,
- ODStorageUnit* sourceSU,
- FW_StorageKinds storageKind,
- FW_CCloneInfo* cloneInfo);
-
- void PrivSetClipboardUpdateID(Environment* ev, ODUpdateID id);
-
- // ----- Promises -----
- void PrivDeletePromises(Environment *ev,
- FW_StorageKinds storageKind);
- void PrivPromise(Environment *ev,
- FW_CPromise* promise,
- ODStorageUnit* storageUnit,
- ODPropertyName propertyName,
- ODValueType valueType);
-
- void PrivPromiseDeleted(Environment *ev,
- FW_CPromise* promise);
- void PrivHandleFulfillPromise( Environment* ev,
- FW_CPromise* promise,
- ODStorageUnitView* promiseSUView);
-
- protected:
- virtual FW_EInternalizeResult PrivHandleEmbedAs(Environment* ev,
- FW_CContent* content,
- ODStorageUnit* sourceSU,
- FW_CCloneInfo* cloneInfo,
- ODPasteAsResult* embedAsInfo);
-
- //----------------------------------------------------------------------------------------
- // Data Members
- //
- protected:
- FW_CPart* fPart;
-
- private:
- FW_CPromise* fClipboardPromise;
- FW_CPromise* fDragAndDropPromise;
- FW_CPromise* fLinkPromise;
- ODUpdateID fClipboardUpdateID; // update id of last Copy to clipboard
- };
-
- //----------------------------------------------------------------------------------------
- // FW_CDataInterchange::GetLastClipboardUpdateID
- //----------------------------------------------------------------------------------------
- inline ODUpdateID FW_CDataInterchange::GetLastClipboardUpdateID(Environment*) const
- {
- return fClipboardUpdateID;
- }
-
- //----------------------------------------------------------------------------------------
- // FW_CDataInterchange::PrivSetClipboardUpdateID
- //----------------------------------------------------------------------------------------
- inline void FW_CDataInterchange::PrivSetClipboardUpdateID(Environment*, ODUpdateID id)
- {
- fClipboardUpdateID = id;
- }
-
-
- #endif